package ljl.alg.wangzheng_camp.round1.array_and_list;

import commons.ListNode;

/**
 * 我日居然做错了
 * 我日！
 *
 * */
public class _160_intersection_node {
    
    /**
     * 一个是遍历两个链表
     * 一个是 hashset 判断
     *
     * 用第一种吧，还省事
     * 1 2 3
     * 6 5 4 3
     * */
    public ListNode getIntersectionNode(ListNode list1, ListNode list2) {
        ListNode p1 = list1, p2 = list2;
        while (p1 != p2) {
            // 我日，这错了；如果空，就不能 next 了；赋值也算一种 next
            if (p1 == null) p1 = list2;
            else p1 = p1.next;
            if (p2 == null) p2 = list1;
            else p2 = p2.next;
        }
        return p1;
    }
}
